/*
 * COPYRIGHT(c) SK telecom 2009
 * This software is the proprietary information of SK telecom.
 *
 * Revision History
 * Author     Date          Description
 * --------   ----------    ------------------
 * 홍길동            2009. 4. 29.    Description
 *
 */
package com.tisotry.admin.adminmgr.auth.persistence.dao;

import java.util.HashMap;
import java.util.List;

import com.ibatis.dao.client.DaoException;
import com.omp.admin.adminmgr.auth.model.AdminMember;
import com.omp.commons.paging.PageNavigator;
import com.omp.commons.paging.PageResultList;

/**
 * TODO 클래스 설명을 입력해 주세요.
 * <p/>
 * 상세한 설명을 입력해 주세요.
 *
 * @author  홍길동
 * @version 0.1
 */
public interface AdminMemberDAO {
    public AdminMember adminMemberCreate(AdminMember adminMem);
    public int adminMemberDelete(String id);
    public int adminMemberUpdate( AdminMember adminMem );
    public AdminMember adminMemberFind(String id);
    public PageResultList adminMemberList(PageNavigator pageNavi,AdminMember adminMem);
    public List adminMemberMgrAll( String id, String topCode, String menuDepth );
    /**
     * 
     * TODO 메소드 설명을 입력해주십시오.
     * <P/>
     * 상세한 메소드 설명.
     * @deprecated
     * @param mgrId
     * @return
     */
    public List adminAuthMgrList(String mgrId);
    public int adminAuthMgrInsert(String mgrId , String menuId,String loginId);
    
    public int adminAuthMgrDelete(String mgrId);
    public int adminMemberLoginDateUpdate(String id);
    public AdminMember adminLogin(AdminMember adminMem);
    
    
    public List adminAuthTopMenuList(String id);

    public List adminAuthLeftMenuListMap(String id,String topCode,String menuDepth);
    
    public boolean isAdminValidPageAuth(HashMap map);
    
    /**
     * 로그인 정보 저장
     * @param mbrId
     * @param accIp
     * @param accDttm
     */
	public void insertLoginInfo(String loginSeq, String mbrId, String accIp, String accDttm);
	
	/**고객정보조회 로그 저장
	 * @param map
	 * @author bw yun
	 * @date 2013. 10. 15.
	 */
	public void insertIDMSCusInfoLog(HashMap map ) ;

	/** TBL_US_ADM_LOGIN_INFO 세션 저장용 시퀀스 번호 조회 
	 * @return
	 * @throws DaoException
	 * @author bw yun
	 * @date 2013. 9. 25.
	 */
	public String getInsertLoginInfoSeq() throws DaoException;

	/**
	 * 관리자 비밀번호 동일 여부 카운트.
	 * @param map
	 * @return
	 */
	public int getConfirmCountByPassword(HashMap<String, String> map);
	
	/**
	 * 관리자 비밀번호 변경
	 * @param map
	 */
	public void updateAdminPassword(HashMap<String, String> map);
	
	/**
	 * 비밀번호 변경 대상 관리자 정보 취득
	 * @return
	 */
	public List<AdminMember> getUpdateAdminInfo();
	
	/**
	 * 회원 리스트를 조회한다.
	 * @return
	 */
	public List<HashMap<String, String>> getMemberList(HashMap<String, String> param);
    
	
	public void updateLogoutInfo(HashMap<String, String> map);

}
